home *** CD-ROM | disk | FTP | other *** search
/ The Utilities Experience / The Utilities Experience - Volume 1.iso / software / demos / a-d / amms / menu / settings.bat < prev    next >
Encoding:
DOS Batch File  |  1995-08-20  |  5.2 KB  |  189 lines

  1. ;    $VER: 1.01 / 12.02.1994
  2. ; Einstellungs-Menue
  3. ; ------------------
  4. ; Im Menu ist Command-Bit 6 gesetzt. Deshalb kann der User definiert
  5. ; auf Befehle zugreifen, auf die er normalerweise keinen Zugriff hat.
  6. ; Die Variable COM wird zum Erkennen von Fehlern benutzt. Tritt ein
  7. ; Fehler auf, so wird in die Routine SAVE_ERROR verzweigt, die den Fehler
  8. ; im File mbdat:menu.err protokolliert.
  9. ; Die Variable JUMP wird zum eventuellen Sprung von einem Untermenue zum
  10. ; anderen benutzt, ohne das Hauptmenue dazwischen aufzurufen. In dieser
  11. ; Variable muss dann das entsprechende Label des Untermenues stehen.
  12. ; Soll kein Schnell-Wechsel stattfinden, so darf die Variable JUMP nicht
  13. ; geaendert werden.
  14. ;
  15.  
  16. ;
  17. ; **** Einstellungs-Menue
  18. ;
  19. MENU="Settings"                ; Name des Menues
  20. _on error SAVE_ERROR            ; Beim Fehler -> Fehlerbehandlungsrou.
  21.  
  22. ; Menuetext ausgeben und Tasten abfragen
  23.  
  24. MENU:
  25. COM="MENU"                ; Menupunkt in Variable COM speichern
  26. COMNAME="Settings-Menu"            ; WHO-Befehlsname setzen
  27. _menu/file "menu:'{ALANGUAGE}'/settings.txt" -
  28.  "^R" MENU -                ; Bildschirm erneuern
  29.  "A" EDIT_BATCH -            ; Login-Batch aendern
  30.  "B" CLI -                ; Befehleebene
  31.  "C" CURSOR -                ; Cursortasten setzen
  32.  "E" EMULATION -            ; Emulation aendern
  33.  "I" LANGUAGE -                ; Sprache aendern
  34.  "P" PASSWORD -                ; Passwort aendern
  35.  "Q" MAIN -                ; Main-Menue
  36.  "S" SHOW_USER -            ; Userdaten anschauen
  37.  "U" EDIT_USER -            ; Userdaten aendern
  38.  "V" VAK -                ; VAK
  39.  "Z" LINES                ; Zeilenanzahl aendern
  40.  
  41. ;
  42. ; **** Endroutine
  43. ; **** Diese Routine muss fuer das Beenden des Menues aufgerufen werden.
  44. ;
  45. END:
  46. _eod                    ; Ende
  47.  
  48. ;
  49. ; **** Login-Batch aendern
  50. ;
  51. EDIT_BATCH:
  52. COM="EDIT BATCH"            ; Menupunkt setzen
  53. COMNAME=COM                ; WHO-Befehlsname setzen
  54. _if/i {LEVEL} >= USERLEVEL then -    ; Wenn User ->
  55.    _edit batch                ; Login-Batch aendern
  56. _goto MENU                ; -> Menue
  57.  
  58. ;
  59. ; **** Rueckkehr in die Befehlsebene
  60. ;
  61. CLI:
  62. COM="CLI"                ; Menupunkt setzen
  63. JUMP=="CLI"                ; Einsprunglabel im Main-Menue setzen
  64. _goto END                ; Ende der Batchdatei
  65.  
  66. ;
  67. ; **** Cursortasten setzen
  68. ;
  69. CURSOR:
  70. COM="SET CURSOR"            ; Menupunkt setzen
  71. COMNAME=COM                ; WHO-Befehlsname setzen
  72. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  73. _set cursor                ; Cursortasten aendern
  74. _goto MENU                ; -> Menue
  75.  
  76. ;
  77. ; **** Emulation aendern
  78. ;
  79. EMULATION:
  80. COM="SET EMULATION"            ; Menupunkt setzen
  81. COMNAME=COM                ; WHO-Befehlsname setzen
  82. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  83. _set emulation/quiet            ; Emulation aendern
  84. _goto MENU                ; -> Menue
  85.  
  86. ;
  87. ; **** Sprache aendern
  88. ;
  89. LANGUAGE:
  90. COM="SET LANGUAGE"            ; Menupunkt setzen
  91. COMNAME=COM                ; WHO-Befehlsname setzen
  92. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  93. _set language/quiet            ; Sprache aendern
  94. _goto MENU                ; -> Menue
  95.  
  96. ;
  97. ; **** Passwort aendern
  98. ;
  99. PASSWORD:
  100. COM="SET PW"                ; Menupunkt setzen
  101. COMNAME=COM                ; WHO-Befehlsname setzen
  102. _if/i {LEVEL} < USERLEVEL then _goto MENU ; Wenn Gast -> Menue
  103. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  104. _set pw                    ; Passwort aendern
  105. _gosub WAIT                ; Auf Taste warten
  106. _goto MENU                ; -> Menue
  107.  
  108. ;
  109. ; **** Main-Menue
  110. ;
  111. MAIN:
  112. COM="MAIN"                ; Menupunkt setzen
  113. _goto END                ; Ende der Batchdatei
  114.  
  115. ;
  116. ; **** Userdaten anschauen
  117. ;
  118. SHOW_USER:
  119. COM="SHOW USER"                ; Menupunkt setzen
  120. COMNAME=COM                ; WHO-Befehlsname setzen
  121. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  122. _show user                ; Userdaten zeigen
  123. _gosub WAIT                ; Auf Taste warten
  124. _goto MENU                ; -> Menue
  125.  
  126. ;
  127. ; **** Userdaten aendern
  128. ;
  129. EDIT_USER:
  130. COM="EDIT USER"                ; Menupunkt setzen
  131. COMNAME=COM                ; WHO-Befehlsname setzen
  132. _if/i {LEVEL} < USERLEVEL then _goto MENU ; Wenn Gast -> Menue
  133. NAME=""                    ; Username loeschen / Kein Parameter
  134. _if/i {LEVEL} >= SYSOPLEVEL then NAME="""'{NAME}'""" ; Wenn Sysop, Name setzen
  135. _edit user 'NAME'            ; Userdaten aendern
  136. _goto MENU                ; -> Menue
  137.  
  138. ;
  139. ; **** VAK
  140. ;
  141. VAK:
  142. COM="VAK"                ; Menupunkt setzen
  143. COMNAME=COM                ; WHO-Befehlsname setzen
  144. _if/i {LEVEL} < USERLEVEL then _goto MENU ; Wenn Gast -> Menue
  145. _VAK                    ; VAK aufrufen
  146. _goto MENU                ; -> Menue
  147.  
  148. ;
  149. ; **** Zeilenanzahl aendern
  150. ;
  151. LINES:
  152. COM="SET LINES"                ; Menupunkt setzen
  153. COMNAME=COM                ; WHO-Befehlsname setzen
  154. _echo/nolf "#RESET##HOME##CLS#"        ; Bildschirm loeschen
  155. _set lines/quiet            ; Zeilenanzahl aendern
  156. _goto MENU                ; -> Menue
  157.  
  158. ;
  159. ; **** SUBROUTINE: Gib einen Infotext aus und warte auf Taste
  160. ;
  161. WAIT:
  162. COM_OLD=COM                ; Alten Menupunkt retten
  163. COM="WAIT"                ; Neuen Menupunkt setzen
  164. _echo/nolf "^J[RETURN]"            ; Gib Wartemeldung aus
  165. _waitkey " ^M"                ; Warte auf Space oder Return
  166. COM=COM_OLD                ; Alten Menupunkt setzen
  167. _return                    ; Ende der Unterroutine
  168.  
  169. ;
  170. ; **** Fehlerbehandlungs-Routine
  171. ;
  172. ; Die Routine erwartet in der Variable COM den Namen des akt. Menupunkts.
  173. ; Sie protokolliert im File mbdat:menu.err die Fehler des Menues.
  174. ;
  175. SAVE_ERROR:
  176. _on error/ignore            ; Alle Fehler ignorieren
  177. _extern echo >>mbdat:menu.err "------------------"
  178. _extern echo >>mbdat:menu.err "Fehler im Menu"
  179. _extern echo >>mbdat:menu.err "Menu : 'MENU'"
  180. _extern echo >>mbdat:menu.err "Punkt: 'COM'"
  181. _extern echo >>mbdat:menu.err "User : '{NAME}'"
  182. _extern echo >>mbdat:menu.err "Datum: '{DATE}'"
  183. _extern echo >>mbdat:menu.err "Zeit : '{TIME}'"
  184. _extern echo >>mbdat:menu.err "------------------"
  185. _disk text "menu:'{ALANGUAGE}'/Error.txt"  ; Fehlertext anzeigen
  186. _waitkey " ^M"
  187. _if COM == "Menu" then _goto END    ; Wenn Fehler im Menue -> Main-Menue
  188. _goto MENU                ; -> Menue
  189.